选择 VBA) (Case 语句

您所在的位置:网站首页 vba中的if and 选择 VBA) (Case 语句

选择 VBA) (Case 语句

#选择 VBA) (Case 语句 | 来源: 网络整理| 查看: 265

Select Case 语句 项目 02/19/2023

执行几组语句之一,具体取决于表达式的值。

语法

选择 Casetestexpression [ Caseexpressionlist-n [ statements-n ]] [ Case Else [ elsestatements ]] End Select

Select Case 语句语法包含以下部分:

Part 说明 testexpression 必填。 任何数值表达式或字符串表达式。 expressionlist-n 在出现一个 Case 时是必需的。

以下一个或多个窗体的分隔列表: expression、 expressionToexpression、 Iscomparisonoperator表达式。

To关键字指定值的范围。 如果使用 To 关键字,则更小的值必须在 To 的前面显示。

将 Is 关键字与比较运算符一起使用(Is 和 Like 一起使用的情况除外)可指定值的范围。 如果未提供 Is 关键字,则将自动插入它。

statements-n 可选。 如果 testexpression 与 expressionlist-n 的任何部分匹配,则执行一个或多个语句。 elsestatements 可选。 在 testexpression 与 Case 子句的任意部分均不匹配时执行的一个或多个语句。 备注

如果 testexpression 与任何 Case表达式列表表达式匹配,则 Case 子句后面的语句将执行到下一个 Case 子句,或者,对于最后一个子句,将执行到 End Select。 然后,控制权将传递到 End Select 后面的语句。 如果 testexpression 与多个 Case 子句中的 expressionlist 表达式匹配,则仅执行第一个匹配项后面的语句。

Case Else 子句用于指示在任何其他 Case 选择中的 testexpression 和 expressionlist 之间未找到匹配项时要执行的 elsestatements。 虽然不要求这样做,但最好是在 Select Case 块中包含 Case Else 语句来处理意外的 testexpression 值。 如果没有 Case表达式列表 与 testexpression 匹配,并且没有 Case Else 语句,则继续在 结束选择后的语句处执行。

在每个 Case 子句中使用多个表达式或范围。 例如,以下行有效:

Case 1 To 4, 7 To 9, 11, 13, Is > MaxNumber

注意

Is 比较运算符与 Select Case 语句中使用的 Is 关键字不相同。

您还可以为字符串指定范围和多个表达式。 在以下示例中, Case 匹配完全等于 everything的字符串、按字母顺序排列在 和 soup 之间的nuts字符串,以及 的当前值TestItem:

Case "everything", "nuts" To "soup", TestItem

Select Case 语句可以嵌套。 每个嵌套 的 Select Case 语句都必须具有匹配的 End Select 语句。

示例

此示例使用 Select Case 语句计算变量的值。 第二个 Case 子句包含要计算的变量值,因此仅执行与其关联的语句。

Dim Number Number = 8 ' Initialize variable. Select Case Number ' Evaluate Number. Case 1 To 5 ' Number between 1 and 5, inclusive. Debug.Print "Between 1 and 5" ' The following is the only Case clause that evaluates to True. Case 6, 7, 8 ' Number between 6 and 8. Debug.Print "Between 6 and 8" Case 9 To 10 ' Number is 9 or 10. Debug.Print "Greater than 8" Case Else ' Other values. Debug.Print "Not between 1 and 10" End Select 另请参阅 使用 Select Case 语句 Data types 运算符 语句 支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3